Servomechanical control system and method

ABSTRACT

An improved method for controlling a servomechanism, applicable to nearly all types of servomechanism control systems. The inventive method improves the performance of servomechanism control systems which utilize a digital feedback sensor by enabling the gain to be varied. The variable gain allowed by the inventive method enables tighter control, and better performance.

FIELD OF THE INVENTION

The present invention relates to servomechanisms and control systems,and more particularly, to a novel servomechanism control system andmethod featuring automatic servo loop parameter adjustment duringmovement, according to speed and position tracking error information.

BACKGROUND OF THE INVENTION

In the past few years, motor drive technology has switched from analogto digital control, and this change in the design approach achievesbetter noise immunity, and allows implementation of sophisticated drivesfor AC and DC motors at lower cost. Closed-loop servomechanism controlsystems applied to electrical motors are arranged as a feedback loopwhich comprise certain basic elements, including an error detector,which generates an error signal representing the difference between thecommand signal and the controlled output, and a controller, whichamplifies the error signal. The error detection is based on use of afeedback sensor which is used to measure the state of the system, andfeed the value back to the control system. For example, in the case ofelectrical motor control, a position feedback device mounted on themotor shaft provides position information. Another approach to motorcontrol relates to control of the electrical current. Many other controlsystems can be designed using this approach.

Transient analysis of servomechanism control systems provides adefinition of certain basic concepts regarding system performance, andPID (proportional-integral-derivative) control is based on theseconcepts. The typical issues affecting design of these systems relate tothe speed of response to disturbances in a closed-loop feedback system,the amount of overshoot which can be tolerated, and the steady stateerror which obtains after the system has reached equilibrium.

In any servomechanism control system design, the introduction of PIDcontrol presents constraints on the achievement of good speed ofresponse, while minimizing offshoot, and avoiding oscillations whichcause system instability. Thus, achieving a well-designed servomechanismcontrol system becomes a complicated goal when considering the need tosimultaneously achieve accurate, automatic, continous and instantaneousperformance. The tightness of control is the goal, and the methods ofachieving it include raising the amplitude of the response to a givenerror, which achieves more rapid response, but with this comes theoscillation problem.

Therefore, it would be desirable to provide a method which improves thetightness of control for servomechanisms, without unduly complicatingthe apparatus and its operation.

SUMMARY OF THE INVENTION

Accordingly, it is a principal object of the present invention toovercome prior art problems associated with PID control ofservomechanisms and the speed of response, and provide an improvedmethod for controlling a servomechanism.

In accordance with the present invention, there is provided an improvedmethod of controlling a servomechanism, said method comprising the stepsof:

generating a command signal representing a desired physical quantity;

actuating a driven element to output said physical quantity inaccordance with said command signal;

measuring said output physical quantity and comparing it with saidcommand signal;

generating an error signal representing the difference between saidcommand signal and said meaured output; and

providing said error signal in a feedback loop having a variable gain toactuate said driven element in a fashion so as to reduce said errorsignal to a zero value,

wherein said variable gain is provided in accordance with a functionrelated to the absolute value of said error signal and the absolutevalue of the velocity of said command signal.

The inventive method is applicable to nearly all types of servomechanismcontrol systems. In general application, it is useful to control thestate of a system, using an actuator, which provides a means of changingthe state of the system, and a feedback sensor, which provides a meansto measure the state of the system, to provide a feedback value to thecontrol system. Examples of these types of systems includeservomechanism control of an electrical motor with a position feedbackdevice mounted on the shaft; a machine activated by a hydraulic pistonwith a position feedback device; control of the electrical current in anelectrical motor; control of the water level in a boiler; control ofaeronautical equipment such as aircraft wing flap position systems,valve control in chemical process plants, etc.

The inventive method is applicable in all of these types of systems toreduce the tracking error, i.e., the difference between the desiredstate and the actual state of the controlled variable. It also increasesthe speed of response, reducing the time necessary for the system toreach a new state value within a given precision. Further, it increasescontrol tightness, i.e., it reduces the tracking error induced byexternal perturbations.

A feature of the inventive method is its ability to improve theperformance of servomechanism control systems which utilize a digitalfeedback sensor. Unlike with prior art systems, which have limited gainwhen using a digital feedback sensor, the inventive method enables thegain to be varied, by raising it only when necessary, such as when aperturbation occurs, or when the the speed is increased.

For example, in prior art systems, such as a position control systemusing an electrical motor with an optical encoder, the discrete natureof the encoder reduces the maximum loop gain of the system at very lowspeeds. At low speeds, the speed sensing based on the encoder is notaccurate, and raising the loop gain produces strong vibrations aroundthe equilibrium position. The inventive method allows for a variablegain, thus enabling tighter control.

Other features and advantages of the invention will become apparent fromthe following drawings and the description.

BRIEF DESCRIPTION OF THE DRAWINGS

For a better understanding of the invention with regard to theembodiments thereof, reference is made to the accompanying drawings, inwhich like numerals designate corresponding elements or sectionsthroughout, and in which:

FIG. 1 is a schematic block diagram of a simplified servomechanismcontrol system, and

FIGS. 2a-b illustrate a flowchart of a method of controlling the systemof FIG. 1 in accordance with the method of the present invention.

DETAILED DESCRIPTION OF A PREFERRED EMBODIMENT

Referring now to FIG. 1, there is shown a schematic block diagram of asimplified servomechanism control system 10, for example, in anapplication providing position control using an electric motor as thesystem actuator. Control system 10 comprises a closed-loop feedbacksystem having a command position generator 12, an error detector 14, acontroller 16, an actuator 18, and a position feedback device 20. Thecontroller 16 is shown with a control equation written in the form of aPID control loop, expressed as a Laplace transform. The controlvariables (C, E, I) which are shown in FIG. 1, together with the controlvariables (not shown) which may be calculated (Vc, ε), are defined asfollows:

C Command position, which is the position the system is instructed toreach.

Vc Command speed, which is the velocity of the position command.

E Actual position, which is the present position of the system, such asthe shaft angle of an electrical motor.

ε Position error=(Command Position)−(Actual Position)

I Feedback actuator value (e.g., current of an electrical motor)

In most conventional systems, control equations can be written in thePID control loop form as follows:

I=Ki*∫εdt+Kp*ε+Kd*dε/dt  (1)

Many variations, additions and more elaborate algorithms exist, withmost having the same basic parameters defined (the PID coefficients):

Ki Integral Feedback Coefficient

Kp Proportional Feedback Coefficient

Kd Differential Feedback Coefficient

In many cases the equations are written in a different format, but bymathematical transformation they can be written in the same way,sometimes with additional terms. A common technique of expressing theequation uses the Laplace Transform, in which F(s) represents thetransfer function of the physical system, as shown in FIG. 1.

In accordance with the principles of the present invention, the improvedmethod of servomechanism control utilizes the same form of the equation(1), but the parameters of the equation are adjusted in a specific way,as described further herein.

In order to describe the algorithm utilized in the improved method ofcontrol per the invention, the following portion of the descriptionprovides definitions for the control variables, their relationships andeffect upon the improved control method.

1) Kg is defined as a variable used to change the gain of the controlloop. This variable affects the gain of the PID equation (1). In theinventive method, this variable is a combined function of position errorand of command speed. At command speed zero and position error zero,Kg=1, i.e. the PID coefficients are not changed. During movement, thecommand speed and position error values increase. Kg will then bechanged to an increased value which will cause the system to respondstrongly in order to reduce position error.

2) t_KgPar is defined as a coefficient setting the rate of change of Kgwith the absolute value of position error. This coefficient is given afixed value for a given system, and it defines the relationship betweenKg and the position error.

3) nKd is defined as the coefficient setting the rate of change of Kgwith the command speed. This coefficient is given a fixed value for agiven system, and it defines the relationship between Kg and theabsolute value of the command speed.

4) MinSpeed is defined as a speed threshold parameter. This coefficientis given a fixed value for a given system, and it defines therelationship of Kg and the command speed. When the command speed is wellunder the given fixed value, Kg is independent of the command speed.When the command speed exceeds that value, Kg increases progressivelywith the absolute value of the command speed.

5) MaxKg is defined as an upper limit for Kg. Variation of Kg with thecommand speed and position error is limited to that maximum value.

6) KgFilter is defined as a parameter for filtering Kg, when Kg isdecreasing. In order to avoid discontinuity of the feedback response, alow pass time filter is applied on Kg when the Kg value is decreasing.No filter is applied when Kg is increasing.

With the above definitions, the following equation can be presented inaccordance with the inventive control method, representing the amount offeedback applied to the servomechanism control system (herein: Integralfeedback)

I=Integral+Kp.Kg{circumflex over ( )}2.ε+Kd.Kg.dε/dt  (2)

where Integral is defined as follows:

Integral(t+dt)=Integral(t)+dt.Kii.Kg.Kg.Kgε+dt.Kip.Kg.Kg.dε/dt  (3)

Kii and Kip are defined as follows: (where |ε| represents the absolutevalue of ε)

If (|ε|>0) and (d|ε|/dt >0), then [Kii=Kis, Kip=Kiv]

Otherwise [Kii=Ki, Kip=0].

Kg is calculated by the following formula: Initial value of Kg,Kg=1  (4)

TKg=f(|ε|, |Vc|)  (5)

where f is a growing function of the absolute value of both the positionerror |ε| and the command speed |Vc|, with a finite maximum value, and apositive minimum value of 1. Many mathematical functions or tables ofvalues conforming to these rules may be chosen for f, and for thepreferred embodiment the following function was chosen:

Tkg 1={nKd*abs|Vc|+MinSpeed}/{|Vc|+MinSpeed}+t _(—) KgPar*|ε|  (6)

If (Tkg>MaxKg), then Tkg=MaxKg  (7)

If (Tkg>Kg) then Kg=Tkg  (8)

Otherwise, Kg(t+dt)=Kg(t)+KgFilter*dt*(TKg−Kg(t))  (9)

In accordance with the inventive control method, the above controlequations (1)-(9) provide the following functions:

(1) Function of Kg

The feedback parameters are increased by Kg. At equilibrium, i.e., whenthe position error is small, and when the speed is low, smooth operationis generally required, and in such cases, it is desirable to limit thefeedback gain, so as to avoid vibrations in the control system. Anotherreason for limiting the feedback gain at low speeds is that most servocontrol systems have non-linear behavior at steady state, due tofriction, the digital nature of feedback devices, backlash of gears andother physical limitations. In many cases, these physical limitationslimit the maximum feedback gain of the control system at steady state.However, during movement, a much higher feedback gain can be allowed.

In accordance with the principles of the inventive method, Kg makes itpossible to change the gain during movement, and the specificcombination of command speed and position error variables in the Kgformula (equations 4-9 above) provides a practical way of changing thegain without introducing oscillations in the control system.

Also, the value of Kg is raised to a different mathematical exponent foreach feedback parameter, and this maintains the control loop stabilityfor all Kg values in the range<MaxKg.

(2) Function of Kis, Kiv

In conventional systems, integral feedback is proportional to theposition error integral. If the integral feedback gain is increased,then the problem of overshoot is present and system instability isobtained. In the scope of the present invention, it was observed thatwhen position error is decreasing, the integral has reached a sufficientvalue to compensate the perturbations that caused the position error.However, in conventional systems, the integral term continues to grow,and when the position error finally returns to zero, the integral termhas too large a value, and is the source of overshoot. This is the mainreason that limits are placed on the integral feedback gain.

In accordance with the present invention, the integral feedback termgrows strongly when the position error is growing, but grows slowly (orstops when Ki=0), when the position error is decreasing. This eliminatesthe causes of the overshoot, and thus the integral feedback gain canhave a much larger value, as large as 10 times more.

Similarly, the inventive method applies this approach to the integral ofthe position error derivative (Kiv). Since the integral of the positionerror derivative is related to the position error, Kiv increases theso-called proportional feedback gain Kp without creating oscillations.

Referring now to FIGS. 2a-b, there is illustrated a flowchart of amethod of controlling the system of FIG. 1 in accordance with the methodof the present invention for example, in an application providingposition control using an electric motor as the system actuator. In thepreferred embodiment, the method is incorporated in a software controlroutine, which is typically run on a control hardware computer system,which may be implemented on an NEC V853 microprocessor chip, or other,in accordance with skill of the art software programming techniques.

The control routine described in FIGS. 2a-b is run on the controlhardware, and in block 25, the control routine is called repetitively,typically by an interrupt or delay in order to call the routine atregular intervals. In block 28, the time interval between the presentcall and the last call of the control routine is calculated. Typically,if regular intervals are used, the variable dt can be set to a constantvalue.

In block 30, in order to calculate speed, the previous value of theposition is stored in memory. In block 32, the present command positionand system position are measured, and the difference is calculated,resulting in position error ε. These values of command postion andsystem position are read via interface devices, provided in the specificapplication, such as digital encoders.

In block 34, a target value for the gain factor (Kg) is calculated,using the formulas in equations (5) and (6). This formula increases thegain progressively with position error and command speed. In block 36,the target value for the gain is tested, and if the target value forgain is lower than the present one, a filter is applied to Kg in block38. This leaves a higher gain for some time after a perturbation, thusgiving the system more time to stabilize before lowering the gain backto its initial value.

If the block 36 test of the target value for gain shows that it ishigher than the present one, in block 40 the gain immediately jumps to ahigh value in order to respond quickly and strongly to a detectedperturbation. In block 42, the proportional and differential feedback iscalculated in accordance with the formula shown. The proportionalfeedback is multiplied by the gain Kg at exponent 2, and thedifferential feedback is multiplied by the gain Kg.

In block 44, the position error is tested, to determine whether it isincreasing or decreasing, and the control routine selects the values forthe integral feedback parameters accordingly. If the position error isincreasing, then in block 46, the feedback gain is increased, and a highvalue of the Integral feedback (equation (2)) is chosen.

If, however, the position error is decreasing, then this means that theIntegral feedback has finally reached a value that will bring the systemtoward the command position. If the Integral feedback were to continueto grow, then when the system finally reaches the command position, thevalue of the Integral feedback would be too large, and an overshootwould be created. Thus, in block 48, a low value is selected for Kii anda zero value is selected for Kip.

In block 50, the Integral feedback is calculated per equation (2), andin this step, Kii is multiplied by Kg at exponent 3, and Kip ismultiplied by Kg at exponent 2.

In block 52, the total calculated feedback is output to the system. Inblock 54, the end of the control routine is reached, and the routine iscalled again by the system software at the next time interval dt.

In alternative embodiment, the closed-loop feedback system may beimplemented in an analog signal processor, in accordance with standarddesign techniques.

Having described the inventive method with regard to certain specificsteps, it is to be understood that the description is not meant as alimitation, since further modifications may now suggest themselves tothose skilled in the art, and it is intended to cover such modificationsas fall within the scope of the appended claims.

What is claimed is:
 1. An improved method of controlling aservomechanism, said method comprising the steps of: generating acommand signal representing a desired physical quantity; actuating adriven element to output said physical quantity in accordance with saidcommand signal; measuring said output physical quantity and comparing itwith said command signal; generating an error signal representing thedifference between said command signal and said meaured output; andproviding said error signal in a feedback loop having a variable gain toactuate said driven element in a fashion so as to reduce said errorsignal to a zero value, wherein said variable gain is provided inaccordance with a function related to the absolute value of said errorsignal and the absolute value of the velocity of said command signal. 2.The method of claim 1 wherein said feedback loop comprises elementsrepresenting differential feedback, proportional feedback and integralfeedback.
 3. The method of claim 2 wherein said variable gain is appliedto said differential feedback element with an exponent of one in saidfeedback loop.
 4. The method of claim 2 wherein said variable gain isapplied to said proportional feedback element with an exponent of two insaid feedback loop.
 5. The method of claim 2 wherein said variable gainis applied to said integral feedback element with an exponent of threein said feedback loop.
 6. The method of claim 1 wherein said variablegain function increases with said absolute value of said error signaland said absolute value of said command signal.
 7. The method of claim 1wherein said variable gain function increases with said absolute valueof said error signal and said absolute value of said command signal, andhas a finite maximum value and positive minimum value.
 8. The method ofclaim 7 wherein said method is applied to a position control system inwhich said driven element is provided as a motor and said variable gainfunction is provided in accordance with the following equation: Tkg1={nKd*abs|Vc|+MinSpeed}/{|Vc|+MinSpeed}+t _(—) KgPar*|ε| where, If(Tkg>MaxKg), then Tkg=MaxKg and where: Vc=Command speed, which is thespeed of the position command MinSpeed=a speed threshold parameterMaxKg=an upper limit for Kg t_KgPar=a coefficient setting the rate ofchange of Kg with command speed ε=Position error.
 9. The method of claim1 further comprising the step of filtering said variable gain functionin asymmetric fashion by applying a low pass time filter to saidvariable gain when its value is decreasing, not when its value isincreasing.
 10. The method of claim 8 wherein said error signalcomprises a position error and said feedback loop comprises an integralfeedback element which is adjusted in accordance with a derivative ofthe absolute value of said position error signal, such that saidintegral feedback element has a relatively high value when said positionerror signal is increasing, and a relatively low value when saidposition error signal is decreasing.
 11. The method of claim 8 whereinsaid error signal comprises a position error and said feedback loopcomprises a velocity error integral feedback element which is adjustedin accordance with a derivative of the absolute value of said positionerror signal, such that said integral feedback element has a relativelyhigh value when said position error signal is increasing, and arelatively low value when said position error signal is decreasing. 12.A servomechanism control system comprising: means for generating acommand signal representing a desired physical quantity; means foractuating a driven element to output said physical quantity inaccordance with said command signal; means for measuring said outputphysical quantity and comparing it with said command signal; means forgenerating an error signal representing the difference between saidcommand signal and said meaured output; and means for providing saiderror signal in a feedback loop having a variable gain to actuate saiddriven element in a fashion so as to reduce said error signal to a zerovalue, wherein said variable gain is provided in accordance with afunction related to the absolute value of said error signal and theabsolute value of the velocity of said command signal.
 13. The controlsystem of claim 12 wherein said means for providing said error signal ina feedback loop comprises a processing unit implemented in amicrocontroller programmed with control software.
 14. The control systemof claim 12 wherein said means for providing said error signal in afeedback loop comprises a processing unit implemented in an analogsignal processor.